//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this sample source code is subject to the terms of the Microsoft
// license agreement under which you licensed this sample source code. If
// you did not accept the terms of the license agreement, you are not
// authorized to use this sample source code. For the terms of the license,
// please see the license agreement between you and Microsoft or, if applicable,
// see the LICENSE.RTF on your install media or the root of your tools installation.
// THE SAMPLE SOURCE CODE IS PROVIDED "AS IS", WITH NO WARRANTIES OR INDEMNITIES.
//
//
// (C) Copyright 2006 Marvell International Ltd.
// All Rights Reserved
//
//
/*++
THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
PARTICULAR PURPOSE.

Module Name:  
    CSync.h
Abstract:
    Sync object.

Notes: 
--*/

#ifndef __CSYNC_H_
#define __CSYNC_H_

#include <nkintr.h>

class CLockObject
{
public:
    CLockObject()
    {
    };
    ~CLockObject()
    {
    };
    void Lock( void )
    {
        bLock = INTERRUPTS_ENABLE(FALSE);
    };
    void Unlock( void )
    {
        INTERRUPTS_ENABLE(bLock);
    };
private:
    BOOL bLock;
};

#endif
